[INFO] fetching crate biome_json_parser 0.3.1...
[INFO] checking biome_json_parser-0.3.1 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate biome_json_parser 0.3.1 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate biome_json_parser 0.3.1 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate biome_json_parser 0.3.1
[INFO] finished tweaking crates.io crate biome_json_parser 0.3.1
[INFO] tweaked toml for crates.io crate biome_json_parser 0.3.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded biome_diagnostics_categories v0.3.1
[INFO] [stderr]   Downloaded unicode-bom v2.0.3
[INFO] [stderr]   Downloaded biome_markup v0.3.1
[INFO] [stderr]   Downloaded biome_json_factory v0.3.1
[INFO] [stderr]   Downloaded biome_diagnostics_macros v0.3.1
[INFO] [stderr]   Downloaded biome_text_edit v0.3.1
[INFO] [stderr]   Downloaded drop_bomb v0.1.5
[INFO] [stderr]   Downloaded quickcheck_macros v1.0.0
[INFO] [stderr]   Downloaded quickcheck v1.0.3
[INFO] [stderr]   Downloaded biome_console v0.3.1
[INFO] [stderr]   Downloaded biome_json_syntax v0.3.1
[INFO] [stderr]   Downloaded biome_text_size v0.3.1
[INFO] [stderr]   Downloaded biome_diagnostics v0.3.1
[INFO] [stderr]   Downloaded biome_rowan v0.3.1
[INFO] [stderr]   Downloaded similar v2.4.0
[INFO] [stderr]   Downloaded bstr v0.2.17
[INFO] [stderr]   Downloaded insta v1.36.0
[INFO] [stderr]   Downloaded biome_parser v0.3.1
[INFO] [stderr]   Downloaded bpaf v0.9.9
[INFO] [stderr]   Downloaded countme v3.0.1
[INFO] [stderr]   Downloaded biome_js_unicode_table v0.3.1
[INFO] [stderr]   Downloaded bpaf_derive v0.5.7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 17872e93a34c17c8d24edcef7965a3b31fe10c29e8c73b05886c70407cd30d4b
[INFO] running `Command { std: "docker" "start" "-a" "17872e93a34c17c8d24edcef7965a3b31fe10c29e8c73b05886c70407cd30d4b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "17872e93a34c17c8d24edcef7965a3b31fe10c29e8c73b05886c70407cd30d4b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17872e93a34c17c8d24edcef7965a3b31fe10c29e8c73b05886c70407cd30d4b", kill_on_drop: false }`
[INFO] [stdout] 17872e93a34c17c8d24edcef7965a3b31fe10c29e8c73b05886c70407cd30d4b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 26887d2caa340041a7a9ff7f5fdec9c872ae46e536dacdb66c1bfb4224a88488
[INFO] running `Command { std: "docker" "start" "-a" "26887d2caa340041a7a9ff7f5fdec9c872ae46e536dacdb66c1bfb4224a88488", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling schemars v0.8.16
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]     Checking countme v3.0.1
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling biome_diagnostics_categories v0.3.1
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking drop_bomb v0.1.5
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking unicode-bom v2.0.3
[INFO] [stderr]     Checking biome_js_unicode_table v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]    Compiling biome_markup v0.3.1
[INFO] [stderr]     Checking similar v2.4.0
[INFO] [stderr]     Checking insta v1.36.0
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking env_logger v0.8.4
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]    Compiling serde_derive_internals v0.26.0
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling bpaf_derive v0.5.7
[INFO] [stderr]    Compiling schemars_derive v0.8.16
[INFO] [stderr]    Compiling biome_diagnostics_macros v0.3.1
[INFO] [stderr]    Compiling quickcheck_macros v1.0.0
[INFO] [stderr]     Checking bpaf v0.9.9
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]     Checking biome_text_size v0.3.1
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking biome_text_edit v0.3.1
[INFO] [stderr]     Checking biome_rowan v0.3.1
[INFO] [stderr]     Checking biome_json_syntax v0.3.1
[INFO] [stderr]     Checking biome_json_factory v0.3.1
[INFO] [stderr]     Checking biome_console v0.3.1
[INFO] [stderr]     Checking biome_diagnostics v0.3.1
[INFO] [stderr]     Checking biome_parser v0.3.1
[INFO] [stderr]     Checking biome_json_parser v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]  --> tests/spec_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     tests_macros::gen_tests! {"tests/json_test_suite/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     tests_macros::gen_tests! {"tests/json_test_suite/err/*.json", crate::spec_test::run, "error"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     tests_macros::gen_tests! {"tests/json_test_suite/undefined/*.json", crate::spec_test::run, "undefined"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_comments/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_trailing_commas/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_trailing_commas/err/*.json", crate::spec_test::run, "error"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `biome_json_parser` (test "spec_tests") due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "26887d2caa340041a7a9ff7f5fdec9c872ae46e536dacdb66c1bfb4224a88488", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "26887d2caa340041a7a9ff7f5fdec9c872ae46e536dacdb66c1bfb4224a88488", kill_on_drop: false }`
[INFO] [stdout] 26887d2caa340041a7a9ff7f5fdec9c872ae46e536dacdb66c1bfb4224a88488
[INFO] checking biome_json_parser-0.3.1 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate biome_json_parser 0.3.1 into /workspace/builds/worker-5-tc2/source
[INFO] validating manifest of crates.io crate biome_json_parser 0.3.1 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate biome_json_parser 0.3.1
[INFO] finished tweaking crates.io crate biome_json_parser 0.3.1
[INFO] tweaked toml for crates.io crate biome_json_parser 0.3.1 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a15f2148944753fdf6a001c814329361bec6e99e1494af49aa70b0a9a96fd1cb
[INFO] running `Command { std: "docker" "start" "-a" "a15f2148944753fdf6a001c814329361bec6e99e1494af49aa70b0a9a96fd1cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a15f2148944753fdf6a001c814329361bec6e99e1494af49aa70b0a9a96fd1cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a15f2148944753fdf6a001c814329361bec6e99e1494af49aa70b0a9a96fd1cb", kill_on_drop: false }`
[INFO] [stdout] a15f2148944753fdf6a001c814329361bec6e99e1494af49aa70b0a9a96fd1cb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bf6dbe31b502bdda332d236ae29c84a461078b84d2dbce88e7728b8df05c1962
[INFO] running `Command { std: "docker" "start" "-a" "bf6dbe31b502bdda332d236ae29c84a461078b84d2dbce88e7728b8df05c1962", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]    Compiling proc-macro-error v1.0.4
[INFO] [stderr]    Compiling memoffset v0.8.0
[INFO] [stderr]    Compiling schemars v0.8.16
[INFO] [stderr]     Checking countme v3.0.1
[INFO] [stderr]     Checking hashbrown v0.12.3
[INFO] [stderr]    Compiling syn v2.0.52
[INFO] [stderr]    Compiling biome_diagnostics_categories v0.3.1
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking regex-automata v0.4.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking drop_bomb v0.1.5
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking unicode-bom v2.0.3
[INFO] [stderr]     Checking biome_js_unicode_table v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking yaml-rust v0.4.5
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking similar v2.4.0
[INFO] [stderr]    Compiling biome_markup v0.3.1
[INFO] [stderr]     Checking insta v1.36.0
[INFO] [stderr]     Checking regex v1.10.3
[INFO] [stderr]     Checking env_logger v0.8.4
[INFO] [stderr]     Checking quickcheck v1.0.3
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]    Compiling serde_derive_internals v0.26.0
[INFO] [stderr]    Compiling serde_derive v1.0.197
[INFO] [stderr]    Compiling bpaf_derive v0.5.7
[INFO] [stderr]    Compiling schemars_derive v0.8.16
[INFO] [stderr]    Compiling biome_diagnostics_macros v0.3.1
[INFO] [stderr]    Compiling quickcheck_macros v1.0.0
[INFO] [stderr]     Checking bpaf v0.9.9
[INFO] [stderr]     Checking serde v1.0.197
[INFO] [stderr]     Checking biome_text_size v0.3.1
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking biome_text_edit v0.3.1
[INFO] [stderr]     Checking biome_rowan v0.3.1
[INFO] [stderr]     Checking biome_json_syntax v0.3.1
[INFO] [stderr]     Checking biome_json_factory v0.3.1
[INFO] [stderr]     Checking biome_console v0.3.1
[INFO] [stderr]     Checking biome_diagnostics v0.3.1
[INFO] [stderr]     Checking biome_parser v0.3.1
[INFO] [stderr]     Checking biome_json_parser v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 | ...                   start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:191:48
[INFO] [stdout]     |
[INFO] [stdout] 191 |         if let Some(first) = self.source().get(0..3) {
[INFO] [stdout]     |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:215:80
[INFO] [stdout]     |
[INFO] [stdout] 215 |             std::str::from_utf8_unchecked(self.source.as_bytes().get_unchecked(self.position..))
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:347:13
[INFO] [stdout]     |
[INFO] [stdout] 347 |             self.text_position()..self.text_position() + char.text_len(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:457:21
[INFO] [stdout]     |
[INFO] [stdout] 457 |                     start..self.text_position(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:467:25
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:472:25
[INFO] [stdout]     |
[INFO] [stdout] 472 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:477:25
[INFO] [stdout]     |
[INFO] [stdout] 477 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:480:67
[INFO] [stdout]     |
[INFO] [stdout] 480 |                         ParseDiagnostic::new( "Missing exponent", start..position)
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:481:42
[INFO] [stdout]     |
[INFO] [stdout] 481 | ...                   .with_detail(position..position + TextSize::from(1), "Expected a digit as the exponent")
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:484:67
[INFO] [stdout]     |
[INFO] [stdout] 484 |                         ParseDiagnostic::new( "Missing fraction", position..position + TextSize::from(1))
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:550:41
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...                   escape_start..self.text_position() + c.text_len(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:563:37
[INFO] [stdout]     |
[INFO] [stdout] 563 | ...                   escape_start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:565:50
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   .with_detail(self.text_position()..self.text_position(), "File ends here")
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:574:71
[INFO] [stdout]     |
[INFO] [stdout] 574 |                         ParseDiagnostic::new("Missing closing quote", start..self.text_position())
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:575:42
[INFO] [stdout]     |
[INFO] [stdout] 575 | ...                   .with_detail(self.position..self.position + 1, "line breaks here");
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:596:29
[INFO] [stdout]     |
[INFO] [stdout] 596 | ...                   self.text_position()..self.text_position() + TextSize::from(1),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:621:67
[INFO] [stdout]     |
[INFO] [stdout] 621 |                     ParseDiagnostic::new("Missing closing quote", start..self.text_position())
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:623:29
[INFO] [stdout]     |
[INFO] [stdout] 623 | ...                   self.source.text_len()..self.source.text_len(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:650:18
[INFO] [stdout]     |
[INFO] [stdout] 650 |         for _ in 0..4 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:659:25
[INFO] [stdout]     |
[INFO] [stdout] 659 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:661:34
[INFO] [stdout]     |
[INFO] [stdout] 661 |                     .with_detail(self.text_position()..self.text_position().add(char.text_len()), "Non hexadecimal number")
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:669:25
[INFO] [stdout]     |
[INFO] [stdout] 669 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:672:25
[INFO] [stdout]     |
[INFO] [stdout] 672 |                         self.text_position()..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:740:37
[INFO] [stdout]     |
[INFO] [stdout] 740 | ...                   start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:759:72
[INFO] [stdout]     |
[INFO] [stdout] 759 |                     ParseDiagnostic::new("Unterminated block comment", start..self.text_position())
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:761:29
[INFO] [stdout]     |
[INFO] [stdout] 761 | ...                   self.position..self.position + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:786:25
[INFO] [stdout]     |
[INFO] [stdout] 786 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 | ...                   start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:191:48
[INFO] [stdout]     |
[INFO] [stdout] 191 |         if let Some(first) = self.source().get(0..3) {
[INFO] [stdout]     |                                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:215:80
[INFO] [stdout]     |
[INFO] [stdout] 215 |             std::str::from_utf8_unchecked(self.source.as_bytes().get_unchecked(self.position..))
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:347:13
[INFO] [stdout]     |
[INFO] [stdout] 347 |             self.text_position()..self.text_position() + char.text_len(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:457:21
[INFO] [stdout]     |
[INFO] [stdout] 457 |                     start..self.text_position(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:467:25
[INFO] [stdout]     |
[INFO] [stdout] 467 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:472:25
[INFO] [stdout]     |
[INFO] [stdout] 472 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:477:25
[INFO] [stdout]     |
[INFO] [stdout] 477 |                         position..position + TextSize::from(1),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:480:67
[INFO] [stdout]     |
[INFO] [stdout] 480 |                         ParseDiagnostic::new( "Missing exponent", start..position)
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:481:42
[INFO] [stdout]     |
[INFO] [stdout] 481 | ...                   .with_detail(position..position + TextSize::from(1), "Expected a digit as the exponent")
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:484:67
[INFO] [stdout]     |
[INFO] [stdout] 484 |                         ParseDiagnostic::new( "Missing fraction", position..position + TextSize::from(1))
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:550:41
[INFO] [stdout]     |
[INFO] [stdout] 550 | ...                   escape_start..self.text_position() + c.text_len(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:563:37
[INFO] [stdout]     |
[INFO] [stdout] 563 | ...                   escape_start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:565:50
[INFO] [stdout]     |
[INFO] [stdout] 565 | ...                   .with_detail(self.text_position()..self.text_position(), "File ends here")
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:574:71
[INFO] [stdout]     |
[INFO] [stdout] 574 |                         ParseDiagnostic::new("Missing closing quote", start..self.text_position())
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:575:42
[INFO] [stdout]     |
[INFO] [stdout] 575 | ...                   .with_detail(self.position..self.position + 1, "line breaks here");
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:596:29
[INFO] [stdout]     |
[INFO] [stdout] 596 | ...                   self.text_position()..self.text_position() + TextSize::from(1),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:621:67
[INFO] [stdout]     |
[INFO] [stdout] 621 |                     ParseDiagnostic::new("Missing closing quote", start..self.text_position())
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:623:29
[INFO] [stdout]     |
[INFO] [stdout] 623 | ...                   self.source.text_len()..self.source.text_len(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:650:18
[INFO] [stdout]     |
[INFO] [stdout] 650 |         for _ in 0..4 {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:659:25
[INFO] [stdout]     |
[INFO] [stdout] 659 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:661:34
[INFO] [stdout]     |
[INFO] [stdout] 661 |                     .with_detail(self.text_position()..self.text_position().add(char.text_len()), "Non hexadecimal number")
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:669:25
[INFO] [stdout]     |
[INFO] [stdout] 669 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:672:25
[INFO] [stdout]     |
[INFO] [stdout] 672 |                         self.text_position()..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:740:37
[INFO] [stdout]     |
[INFO] [stdout] 740 | ...                   start..self.text_position(),
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:759:72
[INFO] [stdout]     |
[INFO] [stdout] 759 |                     ParseDiagnostic::new("Unterminated block comment", start..self.text_position())
[INFO] [stdout]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:761:29
[INFO] [stdout]     |
[INFO] [stdout] 761 | ...                   self.position..self.position + 1,
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/lexer/mod.rs:786:25
[INFO] [stdout]     |
[INFO] [stdout] 786 |                         start..self.text_position(),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]  --> tests/spec_tests.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     tests_macros::gen_tests! {"tests/json_test_suite/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]   |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     tests_macros::gen_tests! {"tests/json_test_suite/err/*.json", crate::spec_test::run, "error"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     tests_macros::gen_tests! {"tests/json_test_suite/undefined/*.json", crate::spec_test::run, "undefined"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:22:5
[INFO] [stdout]    |
[INFO] [stdout] 22 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_comments/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 27 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_trailing_commas/ok/*.json", crate::spec_test::run, "ok"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `tests_macros`
[INFO] [stdout]   --> tests/spec_tests.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     tests_macros::gen_tests! {"tests/json_test_suite/allow_trailing_commas/err/*.json", crate::spec_test::run, "error"}
[INFO] [stdout]    |     ^^^^^^^^^^^^ use of undeclared crate or module `tests_macros`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 6 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `biome_json_parser` (test "spec_tests") due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "bf6dbe31b502bdda332d236ae29c84a461078b84d2dbce88e7728b8df05c1962", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf6dbe31b502bdda332d236ae29c84a461078b84d2dbce88e7728b8df05c1962", kill_on_drop: false }`
[INFO] [stdout] bf6dbe31b502bdda332d236ae29c84a461078b84d2dbce88e7728b8df05c1962
